<?php
header('content-type:text/html;charset=utf-8');


//连接数据库
$link =mysqli_connect('localhost','root','','itcast');
if(!$link){
    die ('连接数据库失败！'.mysqli_error($link));
}
//设置字符集，选择数据库
mysqli_query($link,'set names utf8');
mysqli_query($link,'use itcast');
//连接数据库；
$city=array('北京','上海','广州','其他');
$skill=array('HTML','Javascript','PHP','C++');
//假设当前登入用户的id为1；
$id=1;
echo $id;
//$id=$_GET['id'];

//根据id查询用户信息；
if(!empty($_POST)){
    $fields=array('nickname','gender','email','qq','url','city','skill','description');
    foreach ($fields as $v) {
        $save_data[$v] = isset($_POST[$v]) ? $_POST[$v] : '';
    }
    //单选框处理；
    if( $save_data['gender']!='男' &&  $save_data['gender']!='女'){
        die('保存失败：未选择性别。');
    }
    //下拉菜单处理；
    if ( $save_data['city']!='未选择'&&!in_array( $save_data['city'],$city)){
        die('保存失败：你填写的城市不在允许的城市列表中。');
    }
    //复选框处理；
    if(is_array( $save_data['skill'])){
        $save_data['skill']=array_intersect($skill,$save_data['skill']);
        $save_data['skill']=implode(',',$save_data['skill']);
    }else{
        $save_data['skill']='';
    }
    //通过循环语句自拼接sql语句保存到数据库；
    $sql="update `userinfo` set";
    foreach ($save_data as $k=>$v){
        $sql.="`$k`='".mysqli_real_escape_string($link,$v)."',";
    }
    $sql =rtrim($sql ,',')." where id=$id";//rtrim()函数用于除去￥sql中的逗号；
    $rst=mysqli_query($link,$sql);
    echo $rst?"保存成功：$sql":"保存失败：$sql<br>".mysqli_error($link);
}

$sql="select `nickname`,`gender`,`email`,`qq`,`url`,`city`,`skill`,`description` from `userinfo` where `id`=$id";
//echo $sql;die;
$rst=mysqli_query($link,$sql);
//data保存查询到的用户信息；
$data=mysqli_fetch_assoc($rst);
//explode() 函数把字符串打散为数组。
if($data){
    $data['skill']=explode(',',$data['skill']);
}

//加载HTML文件；
define('APP','itcast');
require  './profile_html.php';
